Single user detection base station

ABSTRACT

A code division multiple access base station is used in receiving a plurality of data signals over a shared spectrum. Each received data signal experiences a similar channel response. A combined signal of the received data signals is received over a shared spectrum. The combined signal is sampled at a multiple of the chip rate. A channel response is estimated. A first element of a spread data vector is determined using the combined signal samples and the estimated channel response. A factor from the first element determination is used to determine remaining elements of the spread data vector. Data of the data signals is estimated using the determined elements of the spread data vector.

This application is a continuation of U.S. patent application Ser. No.10/052,943, Nov. 7, 2001, which claims priority to U.S. ProvisionalPatent Application No. 60/246,947, filed on Nov. 9, 2000, whichapplications are incorporated herein by reference.

BACKGROUND

The invention generally relates to wireless communication systems. Inparticular, the invention relates to data detection in a wirelesscommunication system.

FIG. 1 is an illustration of a wireless communication system 10. Thecommunication system 10 has base stations 12 ₁ to 12 ₅ (12) whichcommunicate with user equipments (UEs) 14 ₁ to 14 ₃ (14). Each basestation 12 has an associated operational area, where it communicateswith UEs 14 in its operational area.

In some communication systems, such as code division multiple access(CDMA) and time division duplex using code division multiple access(TDD/CDMA), multiple communications are sent over the same frequencyspectrum. These communications are differentiated by theirchannelization codes. To more efficiently use the frequency spectrum,TDD/CDMA communication systems use repeating frames divided into timeslots for communication. A communication sent in such a system will haveone or multiple associated codes and time slots assigned to it. The useof one code in one time slot is referred to as a resource unit.

Since multiple communications may be sent in the same frequency spectrumand at the same time, a receiver in such a system must distinguishbetween the multiple communications. One approach to detecting suchsignals is multiuser detection. In multiuser detection, signalsassociated with all the UEs 14, users, are detected simultaneously.Approaches for implementing multiuser detection include block linearequalization based joint detection (BLE-JD) using a Cholesky or anapproximate Cholesky decomposition. These approaches have a highcomplexity. The high complexity leads to increased power consumption,which at the UE 14 ₁ results in reduced battery life. Accordingly, it isdesirable to have alternate approaches to detecting received data.

SUMMARY

A code division multiple access base station is used in receiving aplurality of data signals over a shared spectrum. Each received datasignal experiences a similar channel response. A combined signal of thereceived data signals is received over a shared spectrum. The combinedsignal is sampled at a multiple of the chip rate. A channel response isestimated. A first element of a spread data vector is determined usingthe combined signal samples and the estimated channel response. A factorfrom the first element determination is used to determine remainingelements of the spread data vector. Data of the data signals isestimated using the determined elements of the spread data vector.

BRIEF DESCRIPTION OF THE DRAWING(S)

FIG. 1 is a wireless communication system.

FIG. 2 is a simplified transmitter and a single user detection receiver.

FIG. 3 is an illustration of a communication burst.

FIG. 4 is a flow chart of an extended forward substitution approach tosingle user detection (SUD).

FIG. 5 is a flow chart of an approximate banded Cholesky approach toSUD.

FIG. 6 is a flow chart of a Toeplitz approach to SUD.

FIG. 7 is a flow chart of a fast fourier transform (FFT) approachapplied to the channel correlation matrix for SUD.

FIG. 8 is a flow chart of a EFT approach to SUD using effectivecombining.

FIG. 9 is a flow chart of a FFT approach to SUD using zero padding.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

FIG. 2 illustrates a simplified transmitter 26 and receiver 28 usingsingle user detection (SUD) in a TDD/CDMA communication system, althoughthe single user detection approaches are applicable to other systems,such as frequency division duplex (FDD) CDMA. In a typical system, atransmitter 26 is in each UE 14 and multiple transmitting circuits 26sending multiple communications are in each base station 12. The SUDreceiver 28 may be at a base station 12, UEs 14 or both. SUD istypically used to detect data in a single or multicode transmission froma particular transmitter. When all the signals are sent from the sametransmitter, each of the individual channel code signals in themulticode transmission experience the same channel impulse response. SUDis particularly useful in the downlink, where all transmissionsoriginate from a base station antenna or antenna array. It is alsouseful in the uplink, where a single user monopolizes a timeslot with asingle code or multicode transmission.

The transmitter 26 sends data over a wireless radio channel 30. A datagenerator 32 in the transmitter 26 generates data to be communicated tothe receiver 28. A modulation/spreading sequence insertion device 34spreads the data and makes the spread reference data time-multiplexedwith a midamble training sequence in the appropriate assigned time slotand codes for spreading the data, producing a communication burst orbursts.

A typical communication burst 16 has a midamble 20, a guard period 18and two data bursts 22, 24, as shown in FIG. 3. The midamble 20separates the two data fields 22, 24 and the guard period 18 separatesthe communication bursts to allow for the difference in arrival times ofbursts transmitted from different transmitters 26. The two data bursts22, 24 contain the communication burst's data.

The communication burst(s) are modulated by a modulator 36 to radiofrequency (RF). An antenna 38 radiates the RF signal through thewireless radio channel 30 to an antenna 40 of the receiver 28. The typeof modulation used for the transmitted communication can be any of thoseknown to those skilled in the art, such as quadrature phase shift keying(QPSK) or M-ary quadrature amplitude modulation (QAM).

The antenna 40 of the receiver 28 receives various radio frequencysignals. The received signals are demodulated by a demodulator 42 toproduce a baseband signal. The baseband signal is sampled by a samplingdevice 43, such as one or multiple analog to digital converters, at thechip rate or a multiple of the chip rate of the transmitted bursts. Thesamples are processed, such as by a channel estimation device 44 and aSUD device 46, in the time slot and with the appropriate codes assignedto the received bursts. The channel estimation device 44 uses themidamble training sequence component in the baseband samples to providechannel information, such as channel impulse responses. The channelimpulse responses can be viewed as a matrix, H. The channel informationis used by the SUD device 46 to estimate the transmitted data of thereceived communication bursts as soft symbols.

The SUD device 46 uses the channel information provided by the channelestimation device 44 and the known spreading codes used by thetransmitter 26 to estimate the data of the desired receivedcommunication burst(s). Although SUD is explained using the thirdgeneration partnership project (3GPP) universal terrestrial radio access(UTRA) TDD system as the underlying communication system, it isapplicable to other systems. That system is a direct sequence widebandCDMA (W-CDMA) system, where the uplink and downlink transmissions areconfined to mutually exclusive time slots.

The receiver 28 receives using its antenna 40 a total of K bursts thatarrive simultaneously, 48. The K bursts are superimposed on top of eachother in one observation interval. For the 3GPP UTRA TDD system, eachdata field of a time slot corresponds to one observation interval.

For one observation interval, the data detection problem is viewed asper Equation 1.r=H·d+n  Equation 1r is the received samples. H is the channel response matrix. d is thespread data vector. The spread data matrix contains the data transmittedin each channel mixed with that channel's spreading code.

When the received signal is oversampled, multiple samples of eachtransmitted chip are produced resulting in received vectors, r₁, . . . ,r_(N), (48). Similarly, the channel estimation device 44 determines thechannel responses, H₁, . . . , H_(N), corresponding to the receivedvectors, r₁, . . . , r_(N), (50). For twice the chip rate, Equation 1becomes Equation 2.

$\begin{matrix}{\begin{bmatrix}r_{1} \\r_{2}\end{bmatrix} = {{\begin{bmatrix}H_{1} \\H_{2}\end{bmatrix} \cdot d} + n}} & {{Equation}\mspace{14mu} 2}\end{matrix}$r₁ is the even samples (at the chip rate) and r₂ is the odd samples(offset half a chip from the r₁ samples). H₁ is the channel response forthe even samples and H₂ is the channel response for the odd samples.

Equation 1 becomes Equation 3 for a multiple N of the chip rate.

$\begin{matrix}{\begin{bmatrix}r_{1} \\r_{2} \\\vdots \\r_{N}\end{bmatrix} = {{\begin{bmatrix}H_{1} \\H_{2} \\\vdots \\H_{N}\end{bmatrix} \cdot d} + n}} & {{Equation}\mspace{14mu} 3}\end{matrix}$r₁,r₂ . . . r_(N) are the multiple of the chip rate samples. Each offsetby 1/N of a chip. H₁, H₂ . . . H_(N) are the corresponding channelresponses. Although the following discussion focuses on a receiversampling at twice the chip rate, the same approaches are applicable toany multiple of the chip rate.

For twice the chip rate sampling, matrices H₁ and H₂ are (N_(S)+W−1) byN_(S) in size. N_(S) is the number of spread chips transmitted in theobservation interval and W is the length of the channel impulseresponse, such as 57 chips in length. Since the received signal hasN_(S) spread chips, the length of r₁ and r₂ is N_(S). Equation 2 isrewritten as Equation 4.

$\begin{matrix}{\left. \begin{matrix}{r_{1}(0)} \\{r_{1}(1)} \\| \\{r_{1}\left( {W - 1} \right)} \\\; \\{r_{1}\left( {N_{S} - 1} \right)} \\{--{-- -}} \\\; \\{r_{2}(0)} \\{r_{2}(1)} \\| \\{r_{1}\left( {W - 1} \right)} \\\; \\{r_{1}\left( {N_{S} - 1} \right)}\end{matrix} \right\rbrack = {\quad{{\begin{bmatrix}{h_{1}(0)} & 0 & 0 & -- & -- & -- & -- & -- \\{h_{1}(1)} & {h_{1}(0)} & 0 & -- & \; & \; & \; & \; \\| & | & \; & \; & \; & \; & \; & \; \\{h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & -- & -- & {h_{1}(1)} & {h_{1}(0)} & 0 & 0 \\| & | & \; & \; & | & | & | & | \\0 & 0 & -- & {h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & -- & {h_{1}(1)} & {h_{1}(0)} \\-- & -- & -- & -- & -- & -- & -- & -- \\{h_{2}(0)} & 0 & 0 & -- & -- & -- & -- & -- \\{h_{2}(1)} & {h_{2}(0)} & 0 & -- & \; & \; & \; & \; \\| & | & \; & \; & \; & \; & \; & \; \\{h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & -- & -- & {h_{2}(1)} & {h_{2}(0)} & 0 & 0 \\| & | & \; & \; & | & | & | & | \\0 & 0 & -- & {h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & -- & {h_{2}(1)} & {h_{2}(0)} \\-- & -- & -- & -- & -- & -- & -- & --\end{bmatrix} \cdot d} + n}}} & {{Equation}\mspace{14mu} 4}\end{matrix}$r₁(i), r₂(i), h₁(i) and h₂(i) is the i^(th) element of the correspondingvector matrix r₁, r₂, H₁ and H₂, respectively.

One approach to determine the spread data vector is extended forwardsubstitution, which is explained in conjunction with FIG. 4. Forextended forward substitution, the received data vector is rearranged sothat each even sample is followed by its corresponding odd sample. Asimilar rearrangement is performed on the channel response matrix, asshown in Equation 5a.

$\begin{matrix}{\left. \begin{matrix}{r_{1}(0)} \\{r_{2}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\| \\{r_{1}\left( {W - 1} \right)} \\{r_{2}\left( {W - 1} \right)} \\| \\{r_{1}\left( {N_{S} - 1} \right)} \\{r_{2}\left( {N_{S} - 1} \right)}\end{matrix} \right\rbrack = {\quad{\begin{bmatrix}{h_{1}(0)} & 0 & 0 & -- & \; & \; & \; & \; \\{h_{2}(0)} & 0 & 0 & -- & \; & \; & \; & \; \\{h_{1}(1)} & {h_{1}(0)} & 0 & -- & \; & \; & \; & \; \\{h_{2}(1)} & {h_{2}(0)} & 0 & -- & \; & \; & \; & \; \\| & | & | & -- & \; & \; & \; & \; \\{h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & -- & -- & {h_{1}(1)} & {h_{1}(0)} & 0 & 0 \\{h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & -- & -- & {h_{2}(1)} & {h_{2}(0)} & 0 & 0 \\| & | & \; & \; & | & | & | & | \\0 & 0 & -- & {h_{1}\left( {W - 1} \right)} & {h_{1}\left( {W - 2} \right)} & -- & {h_{1}(1)} & {h_{1}(0)} \\0 & 0 & -- & {h_{2}\left( {W - 1} \right)} & {h_{2}\left( {W - 2} \right)} & -- & {h_{2}(1)} & {h_{2}(0)}\end{bmatrix} \cdot {\quad{\begin{bmatrix}{d(0)} \\{d(1)} \\| \\| \\{d\left( {N_{S} - 1} \right)}\end{bmatrix} + n}}}}} & \text{Equation 5a}\end{matrix}$Similarly, for an N-multiple of the chip rate sampling, Equation 5b isthe arrangement.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\| \\{r_{N}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\| \\{r_{N}(1)} \\| \\{r_{1}\left( {N_{S} - 1} \right)} \\{r_{2}\left( {N_{S} - 1} \right)} \\| \\{r_{N}\left( {N_{S} - 1} \right)}\end{bmatrix} = {\begin{bmatrix}{h_{1}(0)} & 0 & -- & 0 & 0 \\{h_{2}(0)} & 0 & -- & 0 & 0 \\| & | & -- & | & | \\{h_{N}(0)} & 0 & -- & 0 & 0 \\{h_{1}(1)} & {h_{1}(0)} & -- & 0 & 0 \\{h_{2}(1)} & {h_{2}(0)} & -- & 0 & 0 \\| & | & -- & | & | \\{h_{N}(1)} & {h_{N}(0)} & -- & 0 & 0 \\| & | & -- & | & | \\0 & 0 & -- & {h_{1}(1)} & {h_{1}(0)} \\0 & 0 & -- & {h_{2}(1)} & {h_{2}(0)} \\| & | & -- & | & | \\0 & 0 & -- & {h_{N}(1)} & {h_{N}(0)}\end{bmatrix} \cdot {\quad{\begin{bmatrix}{d(0)} \\{d(1)} \\| \\| \\{d\left( {N_{S} - 1} \right)}\end{bmatrix} + n}}}} & \text{Equation 5b}\end{matrix}$d(i) is the i^(th) element of the spread data vector, d. The length ofthe spread data vector is N_(S). Using extended forward substitution,the zero-forcing solution to determine d(0),d^(0), is per Equations 6aand 7a, (52).

$\begin{matrix}{{\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix} \cdot {d(0)}} = \begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}} & \text{Equation 6a} \\{{\hat{d}(0)} = {{\left\{ {\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack}\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}}} & \text{Equation 7a}\end{matrix}$Equation 6a is the general formula for d(0). Equation 7a is the zeroforcing solution for d^(0). Similarly, for N-multiple of the chip rate,Equations 6b and 7b are used.

$\begin{matrix}{{{\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)} \\| \\{h_{N}(0)}\end{bmatrix}{d(0)}} = \begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\| \\{r_{N}(0)}\end{bmatrix}}\mspace{365mu}} & \text{Equation 6b} \\{{\hat{d}(0)} = {{\left\{ {\left\lbrack {{h_{1}(0)}\mspace{20mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack\begin{bmatrix}{h_{1}(0)} \\\vdots \\{h_{N}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}\mspace{14mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack}\begin{bmatrix}{r_{1}(0)} \\\vdots \\{r_{N}(0)}\end{bmatrix}}} & \text{Equation 7b}\end{matrix}$In solving Equation 7a and 7b, for later use v^(H) is determined asillustrated by Equation 8 for the v^(H) for Equation 7a and stored,(52).

$\begin{matrix}{v^{H} = {\left\{ {\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack}} & {{Equation}\mspace{14mu} 8}\end{matrix}$d^(0) is determined using v^(H) per Equation 9.

$\begin{matrix}{{d^{\bigwedge}(0)} = {v^{H}\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)}\end{bmatrix}}} & {{Equation}\mspace{14mu} 9}\end{matrix}$Using the Toplitz structure of the H matrix, the remaining spread dataelements can be determined sequentially using zero forcing per Equation10a, (54).

$\begin{matrix}{{d^{\bigwedge}(i)} = {v^{H}\left\{ {\begin{bmatrix}{r_{1}(i)} \\{r_{2}(i)}\end{bmatrix} - {\begin{bmatrix}{h_{1}(i)} \\{h_{2}(i)}\end{bmatrix}{d^{\bigwedge}(0)}} + {\sum\limits_{j = 1}^{i - 1}{\;{- \begin{bmatrix}{h_{1}(j)} \\{h_{2}(j)}\end{bmatrix}}{d^{\bigwedge}\left( {i - j - 1} \right)}}}} \right\}}} & \text{Equation 10a}\end{matrix}$For an N-multiple of the chip rate, Equation 10b is used.

$\begin{matrix}{{d^{\hat{}}(i)} = {v^{H}\left\{ {\begin{bmatrix}{r_{1}(i)} \\| \\{r_{N}(i)}\end{bmatrix} - {\begin{bmatrix}{h_{1}(i)} \\| \\{h_{N}(i)}\end{bmatrix}{\hat{d}(0)}} - {\sum\limits_{j = 1}^{i - 1}\;{\begin{bmatrix}{h_{1}(j)} \\| \\{h_{N}(j)}\end{bmatrix} \cdot {d\left( {i - j - 1} \right)}}}} \right.}} & {{Equation}\mspace{14mu}\text{10b}}\end{matrix}$After the spread data vector is determined, each communication burst'sdata is determined by despreading, such as by mixing the spread datavector with each burst's code, (56).

The complexity in using the extended forward substitution approach,excluding despreading, is summarized in Table 1.

TABLE 1 Calculating v^(H) 4 multiplications & 1 reciprocal Calculating d{circumflex over ( )}(0) 2 multiplications Calculating d {circumflexover ( )}(1) 4 multiplications Calculating each up to d 2multiplications {circumflex over ( )}(W − 1) Calculating each d{circumflex over ( )}(i) 2W + 2 multiplications from d {circumflex over( )}(w) to d {circumflex over ( )}(N₅ − 1) Total Number ofMultiplications 2 N_(S) + (W − 1) · W + 2W . . . (N_(S) − W + 1) TotalNumber of Calculations 2 N_(S) + (W − 1) · W + 2W . . . (N_(S) − W− 1) + 5

For a TDD burst type II, N_(S) is 1104 and W is 57, solving for d usingextended forward substitution 200 times per second requires 99.9016million real operations per second (MROPS) for twice the chip ratesampling or 49.95 MROPs for chip rate sampling.

Another approach to estimate data is an approximate banded Choleskyapproach, which is explained in conjunction with FIG. 5. A crosscorrelation matrix R is determined so that it is square, (N_(S) byN_(S)), and banded per Equation 11, (58).R=H^(H)H  Equation 11(.)^(H) indicates the hermetian function. H is of size 2(N_(S)+W−1) byN_(S). Equation 11 is rewritten as Equation 12a for twice the chip ratesampling.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H}H_{2}^{H}} \right\rbrack \cdot \begin{bmatrix}{H1} \\{H2}\end{bmatrix}} = {{H_{1}^{H}H_{1}} + {H_{2}^{H}H_{2}}}}} & \text{Equation~~12a}\end{matrix}$For an N-multiple of the chip rate, Equation 12b is used.

$\begin{matrix}{{R = {{\left\lbrack {H_{1}^{H},{{H_{2}^{H}--}H_{N}^{H}}} \right\rbrack\begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}}\mspace{14mu}{or}}}{R = {\sum\limits_{i = 1}^{N}\;{H_{i}^{H}H_{i}}}}} & {{Equation}\mspace{14mu}\text{12b}}\end{matrix}$

Using Equation 12a or 12b, the resulting R is of size N_(S) by N_(S) andbanded as illustrated in Equation 13 for twice the chip rate sampling,W=3 and N_(S)=10.

$\begin{matrix}{R = \left\lbrack \begin{matrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 \\R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 \\0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 \\0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 \\0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 \\0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} \\0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0}\end{matrix} \right\rbrack} & {{Equation}\mspace{14mu} 13}\end{matrix}$

In general, the bandwidth of R is per Equation 14.p=W−1  Equation 14

Using an approximate Cholesky approach, a sub-block of R, R_(sub), ofsize N_(col) by N_(col) is used. A typical size of R_(sub) is 2W−1 by2W−1, although other sized matrices may be used. The sub-block, R_(sub),is decomposed using Cholesky decomposition per Equation 15, (60).R_(sub)=GG^(H)  Equation 15

The Cholesky factor G is of size N_(col) by N_(col). An illustration ofa 5×5 G matrix with W=3 is per Equation 16.

$\begin{matrix}{G = \left\lbrack \begin{matrix}G_{11} & 0 & 0 & 0 & 0 \\G_{21} & G_{22} & 0 & 0 & 0 \\G_{31} & G_{32} & G_{33} & 0 & 0 \\0 & G_{42} & G_{43} & G_{44} & 0 \\0 & 0 & G_{53} & G_{54} & G_{55}\end{matrix} \right\rbrack} & {{Equation}\mspace{14mu} 16}\end{matrix}$G_(ij) is the element of the G matrix at the i^(th) column and j^(th)row. The G matrix is extended to an N_(S) by N_(S) matrix, G_(full), byright shifting the bottom row of G by one element for each row after thelast row of G, (62). For N_(S)=10, the illustration of Equation 16 isexpanded per Equation 17, (62).

$\begin{matrix}{G_{full} = \left\lbrack \begin{matrix}G_{11} & 0 & \; & \; & \; & \; & \; & \; & \; & \; \\G_{21} & G_{22} & 0 & \; & \; & \; & \; & \; & \; & \; \\G_{31} & G_{32} & G_{33} & 0 & \; & \; & \; & \; & \; & \; \\0 & G_{42} & G_{43} & G_{44} & 0 & \; & \; & \; & \; & \; \\\; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; & \; & \; & \; \\\; & \; & 0 & G_{53} & G_{54} & G_{55} & {0\;} & \; & \; & \; \\\; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; & \; \\\; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 & \; \\\; & \; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55} & 0 \\\; & \; & \; & \; & \; & \; & 0 & G_{53} & G_{54} & G_{55}\end{matrix} \right\rbrack} & {{Equation}\mspace{14mu} 17}\end{matrix}$

The spread data vector is determined using forward and backwardsubstitution, (64). Forward substitution is used to determine y perEquation 18a for twice the chip rate sampling and Equation 18b for amultiple N of the chip rate sampling.G _(full) y=H ₁ ^(H) r ₁ +H ₂ ^(H) r ₂  Equation 18aG _(full) y=H ₁ ^(H) r ₁ +H ₂ ^(H) r ₂ + . . . +H _(N) ^(H) r_(N)  Equation 18bBackward substitution is subsequently used to solve for the spread datavector per Equation 19.G_(full) ^(H)d=y  Equation 19

After the spread data vector, d, is determined, each burst's data isdetermined by despreading, (66).

The complexity of approximate Cholesky decomposition, excludingdespreading, for twice the chip rate sampling is per Table 2.

TABLE 2 Operation Number of Calculations Calculating H^(H)H W(W + 1)Calculating Cholesky Decomposition$\frac{{N_{col}\left( {W - 1} \right)}^{2}}{2} + \frac{3{N_{col}\left( {W - 1} \right)}}{2} - \frac{\left( {W - 1} \right)^{3}}{3} - \left( {W - 1} \right)^{2} - \frac{2\left( {W - 1} \right)}{3}$Calculating H^(H)r 2N_(S)W Forward Substitution$\left\lbrack {N_{S} - \frac{\left( {W - 1} \right)}{2}} \right\rbrack W$and the reciprocal of N_(S) real numbers Backward Substitution$\left\lbrack {N_{S} - \frac{\left( {W - 1} \right)}{2}} \right\rbrack W$and the reciprocal of N_(S) real numbers

For a TDD burst type II, N_(S) is 1104 and for W is 57, performingapproximate banded Cholesky 200 times per second at twice the chip raterequires 272.56 MROPS. By contrast, an exact banded Cholesky approachrequires 906.92 MROPS. For chip rate sampling, the approximate bandedCholesky approach requires 221.5 MROPS.

Another approach for data detection uses a Toeplitz approach,(Levinson-Durbin type algorithm), which is explained in conjunction withFIG. 6. The R matrix of Equation 12a and 12b is reproduced here.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H}H_{2}^{H}} \right\rbrack \cdot \begin{bmatrix}{H1} \\{H2}\end{bmatrix}} = {{H_{1}^{H}H_{1}} + {H_{2}^{H}H_{2}}}}} & {{Equation}\mspace{14mu}\text{12a}}\end{matrix}$For an N-multiple of the chip rate, Equation 12b is used.

$\begin{matrix}{{R = {{\left\lbrack {H_{1}^{H},{{H_{2}^{H}--}H_{N}^{H}}} \right\rbrack\begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}}\mspace{14mu}{or}}}\text{}{R = {\sum\limits_{i = 1}^{N}\;{H_{i}^{H}H_{i}}}}} & {{Equation}\mspace{14mu}\text{12b}}\end{matrix}$

The R matrix is symmetric and Toeplitz with a bandwidth of p=W−1, (68).A left most upper corner of the R matrix, R(k), being a k by k matrix isdetermined as shown in Equation 20.

$\begin{matrix}{{R(k)} = \left\lbrack \begin{matrix}R_{0} & R_{1} & \cdots & R_{k - 1} \\R_{1} & R_{0} & \; & \vdots \\\; & \; & ⋰ & \; \\R_{k - 1} & R_{k - 2} & \cdots & R_{0}\end{matrix} \right\rbrack} & {{Equation}\mspace{14mu} 20}\end{matrix}$Additionally, another vector R_(k) is determined using elements of R,per Equation 21, (72).

$\begin{matrix}{R_{k} = {\begin{bmatrix}R_{1} \\R_{2} \\\vdots \\R_{k}\end{bmatrix}.}} & {{Equation}\mspace{14mu} 21}\end{matrix}$Bolding indicates a matrix including all elements up to its subscript.At stage k+1, the system is solved per Equation 22.R(k+1)d(k+1)=[H ^(H) r] _(k+1)  Equation 22[H^(H)r]_(k+1) is the first (k+1) components of H^(H)r. d(k+1) is brokeninto a vector d₁(k+1) of length k and a scalar d₂(k+1) as per Equation23.

$\begin{matrix}{{d\left( {k + 1} \right)} = {\begin{bmatrix}{d_{1}\left( {k + 1} \right)} \\{d_{2}\left( {k + 1} \right)}\end{bmatrix}.}} & {{Equation}\mspace{14mu} 23}\end{matrix}$

The matrix R(k+1) is decomposed as per Equation 24.

$\begin{matrix}{{R\left( {k + 1} \right)} = {\begin{bmatrix}{R(k)} & \vdots & {E_{k}R_{k}} \\\cdots & \vdots & \cdots \\{R_{k}^{H}E_{k}} & \vdots & R_{0}\end{bmatrix}.}} & {{Equation}\mspace{14mu} 24}\end{matrix}$

E_(k) is an exchange matrix. The exchange matrix operates on a vector byreversing that vectors elements.

Using the Yule-Walker equation for linear prediction, Equation 25results, (78).

$\begin{matrix}{{\begin{bmatrix}{R\left( {k - 1} \right)} & \vdots & {E_{k - 1}R_{k - 1}} \\\cdots & \vdots & \cdots \\{R_{k - 1}^{H}E_{k - 1}} & \vdots & R_{0}\end{bmatrix}\begin{bmatrix}{y_{1}(k)} \\{y_{2}(k)}\end{bmatrix}} = {- \begin{bmatrix}R_{k - 1} \\R_{k}\end{bmatrix}}} & {{Equation}\mspace{14mu} 25}\end{matrix}$

Using order recursions, Equations 26, 27 and 28 result.y ₁(k)=y(k−1)+y ₂(k)E _(k−1) y(k−1)  Equation 26

$\begin{matrix}{{y_{2}(k)} = {- \frac{\left\lbrack {R_{k} + {R_{k - 1}^{H}E_{k - 1}{y\left( {k - 1} \right)}}} \right\rbrack}{\left\lbrack {1 + {R_{k - 1}^{H}{y\left( {k - 1} \right)}}} \right\rbrack}}} & {{Equation}\mspace{14mu} 27} \\{{y(k)} = \begin{bmatrix}{y_{1}(k)} \\{y_{2}(k)}\end{bmatrix}} & {{Equation}\mspace{14mu} 28}\end{matrix}$

Using y(k), d(k+1) is determined per Equations 29, 30 and 31, (74).d ₁(k+1)=d(k)+d ₂(k+1)E _(k) y(k)  Equation 29

$\begin{matrix}{{d_{2}\left( {k + 1} \right)} = \left\lbrack \frac{\left( {H^{H}r} \right)_{k + 1} - {R_{k}^{H}E_{k}{d(k)}}}{1 + {R_{k}^{H}{y(k)}}} \right\rbrack} & {{Equation}\mspace{14mu} 30} \\{{d\left( {k + 1} \right)} = \begin{bmatrix}{d_{1}\left( {k + 1} \right)} \\{d_{2}\left( {k + 1} \right)}\end{bmatrix}} & {{Equation}\mspace{14mu} 31}\end{matrix}$(H^(H)r)_(k+1) is the (k+1)^(th) element of H^(H)r.

After properly initializing the recursions, the recursions are computedfor k=1, 2, . . . , N_(S). d(N_(S)) is a solution to Equation 32, (74).Rd=H ^(H) r  Equation 32

The spread data vector d is despread with the bursts' channelizationcodes to recover the data, (76).

The banded structure of R affects the recursions as follows. R(2) and R₂are per Equation 33.

$\begin{matrix}{{{R(2)} = \begin{bmatrix}R_{0} & R_{1} \\R_{1} & R_{0}\end{bmatrix}},{R_{2} = \begin{bmatrix}R_{1} \\R_{2}\end{bmatrix}}} & {{Equation}\mspace{14mu} 33}\end{matrix}$

The inner product calculations in Equations 27 and 30 require twomultiplications each. To illustrate, the R matrix of Equation 20 for k=6is per Equation 34.

$\begin{matrix}{{{R(6)} = \begin{bmatrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\R_{1} & \; & \; & R_{2} & 0 & 0 \\R_{2} & \; & \; & \; & R_{2} & 0 \\0 & R_{2} & \; & \; & \; & R_{2} \\0 & 0 & R_{2} & \; & \; & R_{1} \\0 & 0 & 0 & R_{2} & \; & R_{0}\end{bmatrix}},{R_{6} = \begin{bmatrix}R_{1} \\R_{2} \\0 \\0 \\0 \\0\end{bmatrix}}} & {{Equation}\mspace{14mu} 34}\end{matrix}$

The number of non-zero elements in the vector R₆ is equal to thebandwidth, p, of the matrix R. When the inner product of R₆ ^(H)E₆y(k)in Equation 27 and the inner product R₆ ^(H)E₆d(k) in Equation 30 arecalculated, only p (and not k) multiplications are required. For a therecursions of Equations 26 and 29, no computational reductions areobtained.

Table 3 shows the complexity in implementing the Toeplitz approach.

TABLE 3 Calculation # of Calculations MROPS Functions Executed Once Per1.3224 Burst Calculating H^(H) H Solving Yule-Walker for y$672\text{,}888 \times \frac{100}{10^{6}}$ 269.1552 Functions ExecutedTwice 100.68 Per Burst Calculating H^(H)r Solving R(k + 1)d(k + 1)H^(H)r$672\text{,}888 \times \frac{200}{10^{6}}$ 538.3104The total MROPs for the Toeplitz approach for a TDD burst type is909.4656 MROPs for twice chip rate sampling and 858.4668 MROPs for chiprate sampling.

Another approach for data detection uses fast fourier transforms (FFTs),which is explained using FIG. 7. If chip rate sampling is used, thechannel matrix H is square except for edge effects. Using a circulantapproximation for the H matrix, a FFT of the received vector, r, and thechannel vector, H, to obtain the data estimate is used.

For a multiple of the chip rate sampling, such as twice the chip rate,the H matrix is not square or circulant. However, a submatrix, shown bydotted lines, of the channel correlation matrix R=H^(H) H matrix ofEquation 13, (84), as shown for Equation 35a is circulant.

$\begin{matrix}{R = \begin{bmatrix}R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 & 0 \\\cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots \\R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 & 0 \\0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 & 0 \\0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 & 0 \\0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 & 0 \\0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} & 0 \\0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} & R_{2} \\\cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots & \cdots \\0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0} & R_{1} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & R_{2} & R_{1} & R_{0}\end{bmatrix}} & \text{Equation 35a}\end{matrix}$For an N-multiple of the chip rate sampling, the channel correlationmatrix is determined per Equation 35b.

$\begin{matrix}{R = {{\left\lbrack {H_{1}^{H}{H_{2}^{H}--}H_{N}^{H}} \right\rbrack\begin{bmatrix}H_{1} \\H_{2} \\| \\H_{N}\end{bmatrix}} = {\sum\limits_{i = 1}^{N}\;{H_{i}^{H}H_{i}}}}} & \text{Equation 35b}\end{matrix}$

By approximating the R matrix as being circulant, Equations 36, 37 and38 are used.R^(H)=DΔD^(H)  Equation 36Δ=diag(D(R)₁)

$\begin{matrix}{d^{\bigwedge} = {{diag}\left( {D\begin{bmatrix}R_{0} \\R_{1} \\R_{2} \\0 \\\vdots \\0\end{bmatrix}} \right)}} & {{Equation}\mspace{14mu} 37}\end{matrix}$(R)₁ is the first column of the R matrix expanded to a diagonal matrix.Although described using the first column, this approach can be modifiedto use any column of the R matrix, (86). However, it is preferred to usea column having the most non-zero elements of any column, such as R₂,R₁, R₀, R₁, R₂. These columns are typically any column at least Wcolumns from both sides, such as any column between and including W andN_(S)−W−1. Equations 38 and 39 are used in a zero-forcing equalizationapproach.Rd^=H^(H)r  Equation 38d^=R ⁻¹(H ^(H) r)  Equation 39

Since D is an orthogonal discrete fourier transform (DFT) matrix,Equations 40, 41 and 42 result.D^(H)D=N_(S)I  Equation 40D ⁻¹=(1/N _(S))D ^(H)  Equation 41

$\begin{matrix}{R^{- 1} = {\frac{1}{N_{S}}D^{H}\Delta^{- 1}\frac{1}{N_{S}}D}} & {{Equation}\mspace{14mu} 42}\end{matrix}$Accordingly, d^ can be determined using a fourier transform perEquations 43, 44 and 45a.

$\begin{matrix}{R^{- 1} = {\frac{1}{N_{S}^{2}}D^{H}{\Delta^{- 1}\left\lbrack {D\left( {H^{H}r} \right)} \right\rbrack}}} & {{Equation}\mspace{14mu} 43} \\{{D^{H}d^{\bigwedge}} = {\frac{1}{N_{S}}{\Delta^{- 1}\left\lbrack {F\left( {H^{H}r} \right)} \right\rbrack}}} & {{Equation}\mspace{14mu} 44} \\{{F\left( d^{\bigwedge} \right)} = \frac{F\left( {H^{H}r} \right)}{N_{S}{F\left( (R)_{1} \right)}}} & \text{Equation 45a}\end{matrix}$(.)₁ is the first column, although an analogous equation can be used forany column of R. F(.) denotes a fourier transform function. F(H^(H)r) ispreferably calculated using FFTs per Equation 45b.F(H ^(H) r)=N _(c) [F(h ₁)F(r ₁)+ . . . +F(h _(N))F(r _(N) )]  Equation45bTaking the inverse fourier transform F⁻¹(.), of the result of Equation45a produces the spread data vector, (88). The transmitted data can berecovered by despreading using the appropriate codes, (90).

The complexity of this FFT approach is shown in Table 4.

TABLE 4 Functions Executed Once Per Burst Calculation # of CalculationsMROPs Calculating H^(H)H 1.3224 F([R]₁) · N_(S)log₂N_(S)$11160 \times \frac{100}{10^{6}}$ 4.4640 Functions Executed Twice 38 PerBurst Calculating H^(H)r by FFT Calculating Equation 45 0.8832 F⁻¹(d) ·N_(S)log₂N_(S) 8.9280 Total 55 MROPS

The FFT approach is less complex than the other approaches. However, aperformance degradation results from the circulant approximation.

Another approach to use FFTs to solve for the data vector for a multipleof the chip rate sampling combines the samples by weighing, as explainedusing FIG. 8. To illustrate for twice the chip rate sampling, r₁ is theeven and r₂ is the odd samples. Each element of r₁, such as a firstelement r₁(0), is weighted and combined with a corresponding element ofr₂, such as r₂(0) per Equation 46.r _(eff)(0)=W ₁ r ₁(0)+W ₂ r ₂(0)  Equation 46r_(eff)(0) is the effectively combined element of an effectivelycombined matrix, r_(eff). W₁ and W₂ are weights. For N-times the chiprate sampling, Equation 47 is used.r _(eff)(0)=W ₁ r ₁(0)+ . . . +W _(n) r _(n)(0)  Equation 47Analogous weighting of the channel response matrices, H₁ to H_(n), isperformed to produce H_(eff), (92). As a result, Equation 3 becomesEquation 48.r _(eff) =H _(eff) d+n  Equation 48The resulting system is an N_(S) by N_(S) system of equations readilysolvable by FFTs per Equation 49, (94).

$\begin{matrix}{{F(d)} = \frac{F\left( r_{eff} \right)}{F\left( \left( H_{eff} \right)_{1} \right)}} & {{Equation}\mspace{14mu} 49}\end{matrix}$

Using the inverse fourier transform, the spread data vector isdetermined. The bursts' data is determined by despreading the spreaddata vector using the bursts' code, (96). Although Equation 49 uses thefirst column of H_(eff), the approach can be modified to use anyrepresentative column of, H_(eff).

Another approach using FFTs uses zero padding, which is explained usingFIG. 9. Equation 5 is modified by zero padding the data vector so thatevery other element, such as the even elements are zero, (98). Themodified d matrix is d^(˜). The H matrix is also expanded to form H^(˜).H matrix is expanded by repeating each column to the right of thatcolumn and shifting each element down one row and zero padding the topof the shifted column. An illustration of such a system for twice thechip rate sampling, W=3 and N_(S)=4 is per Equation 49a.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\{r_{1}(2)} \\{r_{2}(2)} \\{r_{1}(3)} \\{r_{2}(3)}\end{bmatrix} = {\quad{\begin{bmatrix}{h_{1}(0)} & \; & \; & \; & \; & \; & \mspace{11mu} & \; \\{h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; & \; & \mspace{11mu} \\{h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; & \; \\{h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & \; & \; & \; & \; \\{h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} & \; & \mspace{11mu} \\{h_{2}(2)} & {h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} & \; \\0 & {h_{2}(2)} & {h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)} & {h_{2}(0)} \\0 & 0 & {h_{2}(2)} & {h_{1}(2)} & {h_{2}(1)} & {h_{1}(1)} & {h_{2}(0)} & {h_{1}(0)}\end{bmatrix} \cdot {\quad{\begin{bmatrix}{d(0)} \\0 \\{d(1)} \\0 \\{d(2)} \\0 \\{d(3)} \\0\end{bmatrix} + n}}}}} & \text{Equation 49a}\end{matrix}$For an N-multiple of the chip rate, Equation 49b is used as shown forsimplicity for N_(S)=3.

$\begin{matrix}{\begin{bmatrix}{r_{1}(0)} \\{r_{2}(0)} \\| \\{r_{N}(0)} \\{r_{1}(1)} \\{r_{2}(1)} \\| \\{r_{N}(1)} \\{r_{1}(2)} \\{r_{2}(2)} \\| \\{r_{N - 1}(2)} \\{r_{N}(2)}\end{bmatrix} = {{\begin{bmatrix}{h_{1}(0)} & 0 & -- & 0 \\{h_{2}(0)} & {h_{1}(0)} & -- & 0 \\| & | & -- & | \\{h_{N}(0)} & {h_{N - 1}(0)} & -- & 0 \\{h_{1}(1)} & {h_{N}(0)} & -- & 0 \\{h_{2}(1)} & {h_{1}(1)} & -- & 0 \\| & | & -- & | \\{h_{N}(1)} & {h_{N - 1}(1)} & -- & 0 \\0 & {h_{N}(1)} & -- & 0 \\0 & 0 & -- & 0 \\| & | & -- & | \\0 & 0 & -- & {h_{2}(0)} \\0 & 0 & -- & {h_{1}(0)}\end{bmatrix} \cdot \begin{bmatrix}{d(0)} \\0 \\| \\0 \\0 \\{d(1)} \\0 \\0 \\| \\0 \\{d(2)} \\0 \\| \\0 \\0\end{bmatrix}} + n}} & \text{Equation 49b}\end{matrix}$In general, the H^(˜) matrix for an N multiple is (N N_(S)) by (NN_(S)). The matrix H^(˜) is square, Toeplitz and approximately circulantand is of size 2N_(S) by 2N_(S). The zero forcing solution is perEquation 50, (100).

$\begin{matrix}{{F\left( d^{\sim} \right)} = \frac{F(r)}{F\left( \left( H^{\sim} \right)_{1} \right)}} & {{Equation}\mspace{14mu} 50}\end{matrix}$

A column other than the first column may be used in an analogous FFT.Furthermore, since any column may be used, a column from the originalchannel response matrix, H or an estimated expanded column of the H^(˜)derived from a column of H. Using every N^(th) value from d^(˜), d isestimated. Using the appropriate codes, d is despread to recover thedata, (102).

1. A code division multiple access base station for use in receiving aplurality of data signals received over a shared spectrum, each receiveddata signal experiencing a similar channel response, the base stationcomprising: means for receiving a combined signal of the received datasignals over the shared spectrum; means for sampling the combined signalat a multiple of a chip rate of the received data signals; means forestimating a channel response for the combined signal at the multiple ofthe chip rate; means for determining a first element of a spread datavector using the combined signal samples and the estimated channelresponse; means for using a factor from the first element determinationto determine remaining elements of the spread data vector; and means forestimating data of the data signals using the determined elements of thespread data vector.
 2. The base station of claim 1 wherein the factor isderived using the channel response.
 3. The base station of claim 1wherein the multiple of the chip rate is N-multiple of the chip rate andthe factor is v^(H) and a first element of each channel response matrixcorresponding to each N-multiple of the chip rate is h₁(0), h₂(0) . . .h_(N)(0) and$v^{H} = {{\left\{ {\left\lbrack {{h_{1}(0)}\mspace{14mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack\begin{bmatrix}{h_{1}(0)} \\\vdots \\{h_{N}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}\mspace{14mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack}.}$4. The base station of claim 3 wherein N is 2 and$v^{H}\left\{ {{\left\lbrack {{h_{1}(0)}{{h_{2}(0)}\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack}.} \right.$5. The base station of claim 1 wherein the data estimating is bydespreading the spread data vector.
 6. The base station of claim 1wherein the factor is stored prior to the remaining elementsdetermination.
 7. A code division multiple access base station for usein receiving a plurality of data signals received over a sharedspectrum, each received data signal experiencing a similar channelresponse, the receiver comprising: an antenna for receiving a combinedsignal of the received data signals over the shared spectrum; a samplingdevice for sampling the combined signal at a multiple of a chip rate ofthe received data signals; a channel estimation device for estimating achannel response for the combined signal at the multiple of the chiprate; and a single user detection device for determining a first elementof a spread data vector using the combined signal samples and theestimated channel response and for using a factor from the first elementdetermination to determine remaining elements of the spread data vector;wherein data of the data signals is estimated from the spread datavector.
 8. The base station of claim 7 wherein the factor is derivedusing the channel response.
 9. The base station of claim 7 wherein themultiple of the chip rate is N-multiple of the chip rate and the factoris v^(H) and a first element of each channel response matrixcorresponding to each N-multiple of the chip rate is h₁(0), h₂(0) . . .h_(N)(0) and$v^{H} = {{\left\{ {\left\lbrack {{h_{1}(0)}\mspace{14mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack\begin{bmatrix}{h_{1}(0)} \\\vdots \\{h_{N}(0)}\end{bmatrix}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}\mspace{14mu}\ldots\mspace{14mu}{h_{N}(0)}} \right\rbrack}.}$10. The base station of claim 9 wherein N is 2 and$v^{H}\left\{ {{\left\lbrack {{h_{1}(0)}{{h_{2}(0)}\begin{bmatrix}{h_{1}(0)} \\{h_{2}(0)}\end{bmatrix}}} \right\}^{- 1}\left\lbrack {{h_{1}(0)}{h_{2}(0)}} \right\rbrack}.} \right.$11. The base station of claim 7 wherein the data estimating is bydespreading the spread data vector.
 12. The base station of claim 7wherein the factor is stored prior to the remaining elementsdetermination.